# -*- coding:utf-8 -*-
# 字符串常用操作方法
# 查找：所谓字符串查找⽅法即是查找⼦串在字符串中的位置或出现的次数。
"""
1、find()函数：检测某个字符串是否包含在这个字符串中，
              如果在，返回这个字符串开始的位置下标，否则则返回-1。
   语法：字符串序列.find(⼦串, 开始位置下标, 结束位置下标)
   其中：开始和结束位置下标可以省略，表示在整个字符串序列中查找。
"""
var1 = "hello python and java and go i love you"
print(var1.find("python"))
print(var1.rfind("python"))        # 功能相同，查找从右侧开始
print(var1.find("world"))
print(var1.find("and", 18, 30))    # 查找到下标为18-30，and首字母下标


"""
2、index()函数：检测某个⼦串是否包含在这个字符串中，
               如果在返回这个⼦串开始的位置下标，否则则报异常。
   语法：字符串序列.index(⼦串, 开始位置下标, 结束位置下标)
   注意：开始和结束位置下标可以省略，表示在整个字符串序列中查找。
"""
# 相对于find用的更多
print(var1.index("python"))
print(var1.rindex("python"))    # 功能相同，查找从右侧开始
# print(var1.index("world"))


# count()：返回某个⼦串在字符串中出现的次数
# 字符串序列.count(⼦串, 开始位置下标, 结束位置下标)
# 注意：开始和结束位置下标可以省略，表示在整个字符串序列中查找。

print(var1.count("and"))
print(var1.count("world"))


# 修改：对字符串中的内容进行修改
"""
replace():替换内容
# 字符串序列.replace(旧⼦串, 新⼦串, 替换次数) 
# 注意：替换次数如果超出⼦串出现次数，则替换次数为该⼦串出现次数
"""
var2 = var1.replace("go", "php")
var3 = var1.replace("and", "和", 1)   # 将and替换为和，只替换一次
print(var2)
print(var3)
